package cn.yy.pojo;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * Financialposition entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "financialposition", catalog = "phoneerp")
public class Financialposition implements java.io.Serializable {

	// Fields

	private Integer id;
	private Year year;
	private Month month;
	private Double cashAssets;
	private Double prepayments;
	private Double accountsReceivable;
	private Double otherReceivables;
	private Double inventories;
	private Double fixedAssets;
	private Double shortBorrowings;
	private Double accountsPayable;
	private Double advanceReceipts;
	private Double accruedPayroll;
	private Double accruedTax;
	private Double otherPayables;
	private Double capital;
	private Double capitalReserve;
	private Integer accountInChartId;

	// Constructors

	/** default constructor */
	public Financialposition() {
	}

	/** full constructor */
	public Financialposition(Year year, Month month, Double cashAssets,
			Double prepayments, Double accountsReceivable,
			Double otherReceivables, Double inventories, Double fixedAssets,
			Double shortBorrowings, Double accountsPayable,
			Double advanceReceipts, Double accruedPayroll, Double accruedTax,
			Double otherPayables, Double capital, Double capitalReserve,
			Integer accountInChartId) {
		this.year = year;
		this.month = month;
		this.cashAssets = cashAssets;
		this.prepayments = prepayments;
		this.accountsReceivable = accountsReceivable;
		this.otherReceivables = otherReceivables;
		this.inventories = inventories;
		this.fixedAssets = fixedAssets;
		this.shortBorrowings = shortBorrowings;
		this.accountsPayable = accountsPayable;
		this.advanceReceipts = advanceReceipts;
		this.accruedPayroll = accruedPayroll;
		this.accruedTax = accruedTax;
		this.otherPayables = otherPayables;
		this.capital = capital;
		this.capitalReserve = capitalReserve;
		this.accountInChartId = accountInChartId;
	}

	// Property accessors
	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "id", unique = true, nullable = false)
	public Integer getId() {
		return this.id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "yearId", nullable = false)
	public Year getYear() {
		return this.year;
	}

	public void setYear(Year year) {
		this.year = year;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "monthId", nullable = false)
	public Month getMonth() {
		return this.month;
	}

	public void setMonth(Month month) {
		this.month = month;
	}

	@Column(name = "cashAssets", nullable = false, precision = 22, scale = 0)
	public Double getCashAssets() {
		return this.cashAssets;
	}

	public void setCashAssets(Double cashAssets) {
		this.cashAssets = cashAssets;
	}

	@Column(name = "prepayments", nullable = false, precision = 22, scale = 0)
	public Double getPrepayments() {
		return this.prepayments;
	}

	public void setPrepayments(Double prepayments) {
		this.prepayments = prepayments;
	}

	@Column(name = "accountsReceivable", nullable = false, precision = 22, scale = 0)
	public Double getAccountsReceivable() {
		return this.accountsReceivable;
	}

	public void setAccountsReceivable(Double accountsReceivable) {
		this.accountsReceivable = accountsReceivable;
	}

	@Column(name = "otherReceivables", nullable = false, precision = 22, scale = 0)
	public Double getOtherReceivables() {
		return this.otherReceivables;
	}

	public void setOtherReceivables(Double otherReceivables) {
		this.otherReceivables = otherReceivables;
	}

	@Column(name = "inventories", nullable = false, precision = 22, scale = 0)
	public Double getInventories() {
		return this.inventories;
	}

	public void setInventories(Double inventories) {
		this.inventories = inventories;
	}

	@Column(name = "fixedAssets", nullable = false, precision = 22, scale = 0)
	public Double getFixedAssets() {
		return this.fixedAssets;
	}

	public void setFixedAssets(Double fixedAssets) {
		this.fixedAssets = fixedAssets;
	}

	@Column(name = "shortBorrowings", nullable = false, precision = 22, scale = 0)
	public Double getShortBorrowings() {
		return this.shortBorrowings;
	}

	public void setShortBorrowings(Double shortBorrowings) {
		this.shortBorrowings = shortBorrowings;
	}

	@Column(name = "accountsPayable", nullable = false, precision = 22, scale = 0)
	public Double getAccountsPayable() {
		return this.accountsPayable;
	}

	public void setAccountsPayable(Double accountsPayable) {
		this.accountsPayable = accountsPayable;
	}

	@Column(name = "advanceReceipts", nullable = false, precision = 22, scale = 0)
	public Double getAdvanceReceipts() {
		return this.advanceReceipts;
	}

	public void setAdvanceReceipts(Double advanceReceipts) {
		this.advanceReceipts = advanceReceipts;
	}

	@Column(name = "accruedPayroll", nullable = false, precision = 22, scale = 0)
	public Double getAccruedPayroll() {
		return this.accruedPayroll;
	}

	public void setAccruedPayroll(Double accruedPayroll) {
		this.accruedPayroll = accruedPayroll;
	}

	@Column(name = "accruedTax", nullable = false, precision = 22, scale = 0)
	public Double getAccruedTax() {
		return this.accruedTax;
	}

	public void setAccruedTax(Double accruedTax) {
		this.accruedTax = accruedTax;
	}

	@Column(name = "otherPayables", nullable = false, precision = 22, scale = 0)
	public Double getOtherPayables() {
		return this.otherPayables;
	}

	public void setOtherPayables(Double otherPayables) {
		this.otherPayables = otherPayables;
	}

	@Column(name = "capital", nullable = false, precision = 22, scale = 0)
	public Double getCapital() {
		return this.capital;
	}

	public void setCapital(Double capital) {
		this.capital = capital;
	}

	@Column(name = "capitalReserve", nullable = false, precision = 22, scale = 0)
	public Double getCapitalReserve() {
		return this.capitalReserve;
	}

	public void setCapitalReserve(Double capitalReserve) {
		this.capitalReserve = capitalReserve;
	}

	@Column(name = "account_in_chart_ID", nullable = false)
	public Integer getAccountInChartId() {
		return this.accountInChartId;
	}

	public void setAccountInChartId(Integer accountInChartId) {
		this.accountInChartId = accountInChartId;
	}

}